package com.qijian.maindata.domain.query;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.qijian.common.utils.mybatis.WhereType;
import com.qijian.common.utils.mybatis.WhereTypeEnum;
import lombok.Data;
import lombok.ToString;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Set;


/**
 * 产品定额申请单对象 查询条件类
 *
 * @author qijian
 * @date 2023-05-10
 */

@Data
@ToString
@TableName("main_quota_apply")
public class QuotaApplyQuery {

    @WhereType(filed = "id")
    private Long id;
    @WhereType(filed = "id", type = WhereTypeEnum.IN)
    private Set<Long> ids;
    @WhereType(filed = "title", type = WhereTypeEnum.LIKE)
    private String title;
    @WhereType(filed = "number", type = WhereTypeEnum.LIKE)
    private String number;
    @WhereType(filed = "user_name", type = WhereTypeEnum.LIKE)
    private String userName;
    @WhereType(filed = "dept_name", type = WhereTypeEnum.LIKE)
    private String deptName;
    @WhereType(filed = "apply_date", type = WhereTypeEnum.EQ)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date applyDate;
    @WhereType(filed = "expire_date", type = WhereTypeEnum.EQ)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date expireDate;
    @WhereType(filed = "type", type = WhereTypeEnum.LIKE)
    private String type;
    @WhereType(filed = "kingdee_item_code", type = WhereTypeEnum.LIKE)
    private String kingdeeItemCode;
    @WhereType(filed = "product_name", type = WhereTypeEnum.LIKE)
    private String productName;
    @WhereType(filed = "project_no", type = WhereTypeEnum.LIKE)
    private String projectNo;
    @WhereType(filed = "machine_no", type = WhereTypeEnum.LIKE)
    private String machineNo;
    @WhereType(filed = "weight")
    private BigDecimal weight;
    @WhereType(filed = "area")
    private BigDecimal area;
    @WhereType(filed = "total_original_quota")
    private BigDecimal totalOriginalQuota;
    @WhereType(filed = "total_present_quota")
    private BigDecimal totalPresentQuota;
    @WhereType(filed = "total_actual_hour")
    private BigDecimal totalActualHour;

    @WhereType(filed = "is_email", type = WhereTypeEnum.EQ)
    private Boolean isEmail;

}
